package com.ruoyi.contract.service;

import java.util.List;
import com.ruoyi.contract.domain.ContractCategory;

/**
 * 合同类别Service接口
 * 
 * @author ruoyi
 * @date 2024-10-18
 */
public interface IContractCategoryService 
{
    /**
     * 查询合同类别
     * 
     * @param contractCategoryId 合同类别主键
     * @return 合同类别
     */
    public ContractCategory selectContractCategoryByContractCategoryId(Long contractCategoryId);

    /**
     * 查询合同类别
     *
     * @param belongingCompanyId 合同类别外键
     * @return 合同类别
     */
    public List<ContractCategory> selectContractCategoryByBelongingCompanyId(Long belongingCompanyId);

    /**
     * 查询合同类别列表
     * 
     * @param contractCategory 合同类别
     * @return 合同类别集合
     */
    public List<ContractCategory> selectContractCategoryList(ContractCategory contractCategory);

    /**
     * 新增合同类别
     * 
     * @param contractCategory 合同类别
     * @return 结果
     */
    public int insertContractCategory(ContractCategory contractCategory);

    /**
     * 修改合同类别
     * 
     * @param contractCategory 合同类别
     * @return 结果
     */
    public int updateContractCategory(ContractCategory contractCategory);

    /**
     * 批量删除合同类别
     * 
     * @param contractCategoryIds 需要删除的合同类别主键集合
     * @return 结果
     */
    public int deleteContractCategoryByContractCategoryIds(Long[] contractCategoryIds);

    /**
     * 删除合同类别信息
     * 
     * @param contractCategoryId 合同类别主键
     * @return 结果
     */
    public int deleteContractCategoryByContractCategoryId(Long contractCategoryId);
}
